package duppentity.dto.user;

public class UserOrderDto {

    /** 不采用递增值，采用代码生成的唯一 ID */
    public String id;
    /** 下单用户id，参考表的主键：user_info.id */
    public Long userId;
    public String userMobile;

    /** 车牌表id，参考表的主键：car_license_plate.id */
    public Long carLicensePlateResultId;
    /**
     * 车牌号
     */
    public String carNo;
    /**
     * 车型
     */
    public String carType;
    /** 服务站点表id，参考表的主键：bu_station.id */
    public Long stationId;
    public String stationName;
    /** 洗车订单号 */
    public String orderNo;
    /** 商品表id，目前只有一个商品，值默认为0，保留字段 */
    public Long goodsId;
    public String goodsName;
    /** 服务单价（分） */
    public String price;
    /** 余额折扣率（1-100） */
    public String discountRate;
    /** 实际支付金额（单位：分） */
    public String amount;
    /** 实际优惠金额（单位：分） */
    public String discountAmount;

    /** 付款流水 id，参考表的主键：payin.id */
    public Long payinId;
    /**
     * 支付方式：0余额支付，1微信支付 ，2微信支付充值
     */
    public String payTypeName;
    /**
     * 支付时间
     */
    public Long payinTime;
    /** 订单状态：1正常完成洗车，2服务中，3机器异常，4用户紧急停止，5车主放弃 */
    public Integer status;
    public String statusName;
    /**
     * 订单异常原因：1.机器故障 2服务中紧急停止 3付款后用户主动放弃(比如闸门开了但不入闸等),4...
     */
    public Integer failReason;
    public String failReasonName;
    /** 退款审核：1同意退款，2拒绝退款 */
    public Integer refundAudit;
    public String refundAuditName;
    /** 退款状态：0无退款 1待退款 2已退款 */
    public Integer refundStatus;
    public String refundStatusName;

    /** 优惠券ID */
    public Integer couponId;

    /**
     * 退款id
     */
    public Long refundId;
    public String refundTradeNo;
    /**
     * 退款金额
     */
    public String refundFee;
    /**
     * 退款支付方式
     */
    public String refundPayTypeName;
    /**
     * 退款到账时间
     */
    public Long refundTime;

    /**
     * 入闸时间
     */
    public Long enterTime;
    /**
     * 出闸时间
     */
    public Long exitTime;


    /**
     * 开始洗车时间
     */
    public Long startTime;
    /**
     * 洗车完成时间
     */
    public Long finishTime;
    /** 创建时间 */
    public Long createTime;
    /** 修改时间 */
    public Long modifyTime;
}
